Even though the trend toward distributed processing has been a factor of increasing significance in system design from the initial development of the microprocessor, most current distributed systems employ centralized maintenance and configuration control. A typical system is the distributed signal processing system disclosed in U.S. Pat. No. 4,412,281, issued on Oct. 25, 1983, to G. A. Works. In the Works system, redundant elements comprising signal processors, mass memories and input-output controllers are interconnected by redundant busses. One signal processor element in the system is initially designated as the executive and assigns processing tasks from a mass memory to other elements. When a failure is detected, the executive verifies the failure, isolates the faulty element and reassigns the task to another spare element. If another element is not available, the executive reconfigures the system to permit degraded operation using the available elements. The executive element is fault monitored by one of the other elements which is capable of assuming the role of executive as required. The individual elements are addressed by the executive using a virtual addressing technique for each element.
In such an "executive-controlled" system, the executive processing is very complex because the executive is required to track the operational status of all other elements of the system as well as typically "approving" any software changes to be implemented in the other system elements. In addition, the recovery algorithm implemented by the executive frequently depends in a fixed way on the exact topology of the system. As such, system configuration changes generally result in substantial and time-consuming modifications of the executable recovery code used by the executive.
In view of the foregoing, two recognized problems in the art are the complexity and inflexibility that result when an executive processor controls fault recovery in an otherwise distributed processing system.